package cn.achao.csr.chat.service;


import cn.achao.csr.api.model.req.MemberReq;
import cn.achao.csr.api.model.resp.ChatMemberResp;
import cn.achao.csr.api.model.resp.ChatRoomResp;
import cn.achao.csr.api.model.resp.MemberResp;
import cn.achao.csr.base.resp.CursorPageBaseResp;
import cn.achao.csr.mybatis.req.MPBaseCursorPageReq;

/**
 * (ChatRoom)表服务接口
 *
 * @author achao
 * @since 2025-02-06 21:42:42
 */
public interface ChatRoomService {

    /**
     * 获取会话列表--支持未登录态
     * @param request
     * @param uid
     * @return
     */
    CursorPageBaseResp<ChatRoomResp> getContactPage(MPBaseCursorPageReq request, Long uid);

    /**
     * 获取会话详情--支持未登录态
     * @param roomId
     * @param userId
     * @return
     */
    MemberResp roomDetail(Long roomId, Long userId);

    /**
     * 获取会话成员--支持未登录态
     * @param req
     * @return
     */
    CursorPageBaseResp<ChatMemberResp> getMemberPage(MemberReq req);
}
